/**
 * 文件名：@StackHolder.java <br/>
 * 包名：cn.efunbox.afw.core.holder <br/>
 * 项目名：afw-core <br/>
 * @author xtwin <br/>
 */
package cn.efunbox.afw.core.holder;

import java.util.Deque;

/**
 * 类名：StackHolder  <br />
 *
 * 功能：基于栈的持有者定义
 *
 * @author xtwin <br />
 * 创建时间：2016年7月31日 下午2:12:04  <br />
 * @version 2016年7月31日
 */
public interface StackHolder<E> extends Holder<Deque<E>> {

	/**
	 * 功能：推入一个元素到栈顶 <br/>
	 *
	 * @author xtwin <br/>
	 * @version 2016年7月31日 下午2:13:10 <br/>
	 */
	void push(E e);

	/**
	 * 功能：弹出栈顶元素 <br/>
	 *
	 * @author xtwin <br/>
	 * @version 2016年7月31日 下午2:13:27 <br/>
	 */
	E pop();
	
	/**
	 * 功能：拿出栈顶元素，但不移除 <br/>
	 *
	 * @author xtwin <br/>
	 * @version 2016年7月31日 下午2:13:38 <br/>
	 */
	E pick();
}
